﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Daco
{
    public interface ICategory<VALUE, TYPE> where TYPE : class , new()
    {
        VALUE CategoryID { get; }
        ICategory<VALUE, TYPE> ParentCategory { get; set; }
        List<ICategory<VALUE, TYPE>> ChildCategories { get; }
        string Title { get; set; }
        string EncodedTitle { get; }
        string Description { get; set; }
        List<ICategory<VALUE, TYPE>> GetCategoryTree();
        TYPE OfType { get; }
    }
}
